package dataset;

/**
 * All commands that can be recorded should implement
 * this interface. 
 * @author Paul Dannenberg
 *
 * @param <T>
 * @param <S>
 */
public interface ICommand<T extends Comparable<T>, S extends Comparable<S>> {

    /**
     * Performs an action on the specified DataSet.
     * @param toExecuteOn Value to execute
     */
    void execute(DataSet toExecuteOn); 

    /**
     * Returns the name of the ICommand.
     * @return
     */
    String getName();
 
}
